package com.chinaisafe.user.service;

import com.chinaisafe.user.entity.SysAccount;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.chinaisafe.user.vo.request.SysAccountReqVO;
import com.chinaisafe.user.vo.response.SysAccountRespVO;
/**
 * SysAccountService
 * Description：账号服务类
 *
 * @author xuefu.shu
 * @date 2024-07-12 09:55:54
 */
public interface SysAccountService extends IService<SysAccount> {
     /**
      * 根据条件获取账号分页列表
      * @param sysAccountReqVO 筛选参数
      * @return Page<SysAccountRespVO> 分页对象
      * @author xuefu.shu
      * @date  2024-07-12 09:55:54
      */
     IPage<SysAccountRespVO> getPageList(SysAccountReqVO sysAccountReqVO);

     /**
      * 新增账号
      * @param sysAccountReqVO 新增参数
      * @return SysAccountRespVO 响应参数
      * @author xuefu.shu
      * @date 2024-07-12 09:55:54
      */
      SysAccountRespVO add(SysAccountReqVO sysAccountReqVO);

     /**
      * 根据id编辑账号
      * @param sysAccountReqVO 修改参数
      * @return SysAccountRespVO 响应参数
      * @author xuefu.shu
      * @date 2024-07-12 09:55:54
      */
      SysAccountRespVO update(SysAccountReqVO sysAccountReqVO);

     /**
      * 新增或修改账号
      * @param sysAccountReqVO 编辑修改参数
      * @return SysAccountRespVO 响应参数
      * @author xuefu.shu
      * @date 2024-07-12 09:55:54
      */
      SysAccountRespVO addOrUpdate(SysAccountReqVO sysAccountReqVO);

     /**
      *  根据id获取账号详情信息
      * @param sysAccountId 数据id
      * @return SysAccountRespVO 响应参数
      * @author xuefu.shu
      * @date 2024-07-12 09:55:54
      */
      SysAccountRespVO getDetailById(Long sysAccountId);

     /**
      * 根据id删除账号
      * @param sysAccountIds id数组
      * @author xuefu.shu
      * @date 2024-07-12 09:55:54
      */
     void deleteByIds(Long[] sysAccountIds);
}
